package com.woniuxy.dao.model;


import com.baomidou.mybatisplus.annotation.FieldFill;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;


import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;


/**
 * <p>
 * 维修表
 * </p>
 *
 * @author Keep it simple
 * @since 2022-06-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class RepairInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 报修编号
     */
    @TableField("repairNum")
    private String repairnum;

    /**
     * 报修时间
     */
//    @TableField("repairDate")
    @TableField(value = "repairDate",fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime repairdate;

    /**
     * 报修项目
     */
    @TableField("repairType")
    private Integer repairtype;

    /**
     * 维修区域
     */
    @TableField("repairArea")
    private Integer repairarea;

    /**
     * 详细地点
     */
    @TableField("detailLocation")
    private String detaillocation;

    /**
     * 一级维修项目
     */
    @TableField("repairProject_id")
    private Integer repairprojectId;

    /**
     * 维修内容
     */
    @TableField("repairContent")
    private String repaircontent;

    /**
     * 申请维修时间
     */
    @TableField("orderRepairDate")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime orderrepairdate;

    /**
     * 报修人id
     */
    @TableField("repairUser")
    private Integer repairuser;

    /**
     * 报修人姓名
     */
    @TableField("repairUserName")
    private String repairusername;

    /**
     * 报修人电话
     */
    @TableField("userPhone")
    private String userphone;

    /**
     * 报修单位
     */
    @TableField("repairCompany")
    private String repaircompany;

    /**
     * 承接单位
     */
    @TableField("serviceCompany")
    private Integer servicecompany;

    /**
     * 受理人
     */
    @TableField("acceptUser")
    private Integer acceptuser;

    /**
     * 响应时间
     */
    @TableField("responseTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime responsetime;

    /**
     * 维修状态
     */
    @TableField("repairState")
    private Integer repairstate;

    /**
     * 维修完成时间
     */
//    @TableField("completeDate")
    @TableField(value = "completeDate",fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime completedate;

    /**
     * 维修人员id
     */
    @TableField("repairPersonId")
    private Integer repairpersonid;

    /**
     * 是否确认维修
     */
    @TableField("isConfirm")
    private Integer isconfirm;

    /**
     * 用户满意度
     */
    private Integer satisfaction;

    /**
     * 撤销
     */
    @TableField("revokeState")
    private Integer revokestate;

    /**
     * 权限编码
     */
    @TableField("permitCode")
    private String permitcode;

    /**
     * 创建人
     */
    @TableField("createUser")
    private String createuser;

    /**
     * 创建时间
     */
    @TableField("createDate")
    private LocalDateTime createdate;

    /**
     * 菜单id
     */
    @TableField("menuId")
    private Integer menuid;

    /**
     * 紧急程度
     */
    private String urgent;


}
